﻿// -----------------------------------------------------------------------
// <copyright file="BookViewModel.cs" company="EPAM Systems">
////Copyright (c) EPAM Systems, 2012. All rights reserved.
// </copyright>
// -----------------------------------------------------------------------

namespace MBOP.Website.ViewModels.Library
{
	#region Usings

	using System.ComponentModel.DataAnnotations;

	using MBOP.Website.ViewModels.Common;

	#endregion

	/// <summary>
	/// Represents view model for book.
	/// </summary>
	public class BookViewModel
	{
		/// <summary>
		/// Gets or sets the book id.
		/// </summary>
		public int? ID { get; set; }

		/// <summary>
		/// Gets or sets the book title.
		/// </summary>
		[Required(ErrorMessage = "You must enter a title for the book")]
		public string BookTitle { get; set; }

		/// <summary>
		/// Gets or sets the book authors.
		/// </summary>
		[Required(ErrorMessage = "You must enter an author for the book")]
		public string Authors { get; set; }

		/// <summary>
		/// Gets or sets the book description.
		/// </summary>
		public string Description { get; set; }

		/// <summary>
		/// Gets or sets the book european article number.
		/// </summary>
		public string EAN { get; set; }

		/// <summary>
		/// Gets or sets international standard book number
		/// </summary>
		public string ISBN { get; set; }

		/// <summary>
		/// Gets or sets the image of the book.
		/// </summary>
		public ImageViewModel Image { get; set; }

		/// <summary>
		/// Gets or sets the book owner name.
		/// </summary>
		public string OwnerName { get; set; }

		/// <summary>
		/// Gets or sets the owner unique name.
		/// </summary>
		public string OwnerID { get; set; }

		/// <summary>
		/// Gets or sets the book details.
		/// </summary>
		public BookDetailsViewModel Details { get; set; }
	}
}